﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x0200049F RID: 1183
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class EntityMotion : IMessage<EntityMotion>, IMessage, IEquatable<EntityMotion>, IDeepCloneable<EntityMotion>, IBufferMessage
	{
		// Token: 0x17000F38 RID: 3896
		// (get) Token: 0x06003547 RID: 13639 RVA: 0x00092493 File Offset: 0x00090693
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<EntityMotion> Parser
		{
			get
			{
				return EntityMotion._parser;
			}
		}

		// Token: 0x17000F39 RID: 3897
		// (get) Token: 0x06003548 RID: 13640 RVA: 0x0009249A File Offset: 0x0009069A
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return EntityMotionReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17000F3A RID: 3898
		// (get) Token: 0x06003549 RID: 13641 RVA: 0x000924AC File Offset: 0x000906AC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return EntityMotion.Descriptor;
			}
		}

		// Token: 0x0600354A RID: 13642 RVA: 0x000924B3 File Offset: 0x000906B3
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public EntityMotion()
		{
		}

		// Token: 0x0600354B RID: 13643 RVA: 0x000924BC File Offset: 0x000906BC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public EntityMotion(EntityMotion other) : this()
		{
			this.mapLayer_ = other.mapLayer_;
			this.nOFPFOIPOFD_ = other.nOFPFOIPOFD_;
			this.motion_ = ((other.motion_ != null) ? other.motion_.Clone() : null);
			this.entityId_ = other.entityId_;
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x0600354C RID: 13644 RVA: 0x00092520 File Offset: 0x00090720
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public EntityMotion Clone()
		{
			return new EntityMotion(this);
		}

		// Token: 0x17000F3B RID: 3899
		// (get) Token: 0x0600354D RID: 13645 RVA: 0x00092528 File Offset: 0x00090728
		// (set) Token: 0x0600354E RID: 13646 RVA: 0x00092530 File Offset: 0x00090730
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint MapLayer
		{
			get
			{
				return this.mapLayer_;
			}
			set
			{
				this.mapLayer_ = value;
			}
		}

		// Token: 0x17000F3C RID: 3900
		// (get) Token: 0x0600354F RID: 13647 RVA: 0x00092539 File Offset: 0x00090739
		// (set) Token: 0x06003550 RID: 13648 RVA: 0x00092541 File Offset: 0x00090741
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool NOFPFOIPOFD
		{
			get
			{
				return this.nOFPFOIPOFD_;
			}
			set
			{
				this.nOFPFOIPOFD_ = value;
			}
		}

		// Token: 0x17000F3D RID: 3901
		// (get) Token: 0x06003551 RID: 13649 RVA: 0x0009254A File Offset: 0x0009074A
		// (set) Token: 0x06003552 RID: 13650 RVA: 0x00092552 File Offset: 0x00090752
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public MotionInfo Motion
		{
			get
			{
				return this.motion_;
			}
			set
			{
				this.motion_ = value;
			}
		}

		// Token: 0x17000F3E RID: 3902
		// (get) Token: 0x06003553 RID: 13651 RVA: 0x0009255B File Offset: 0x0009075B
		// (set) Token: 0x06003554 RID: 13652 RVA: 0x00092563 File Offset: 0x00090763
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint EntityId
		{
			get
			{
				return this.entityId_;
			}
			set
			{
				this.entityId_ = value;
			}
		}

		// Token: 0x06003555 RID: 13653 RVA: 0x0009256C File Offset: 0x0009076C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as EntityMotion);
		}

		// Token: 0x06003556 RID: 13654 RVA: 0x0009257C File Offset: 0x0009077C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(EntityMotion other)
		{
			return other != null && (other == this || (this.MapLayer == other.MapLayer && this.NOFPFOIPOFD == other.NOFPFOIPOFD && object.Equals(this.Motion, other.Motion) && this.EntityId == other.EntityId && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x06003557 RID: 13655 RVA: 0x000925EC File Offset: 0x000907EC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.MapLayer != 0U)
			{
				num ^= this.MapLayer.GetHashCode();
			}
			if (this.NOFPFOIPOFD)
			{
				num ^= this.NOFPFOIPOFD.GetHashCode();
			}
			if (this.motion_ != null)
			{
				num ^= this.Motion.GetHashCode();
			}
			if (this.EntityId != 0U)
			{
				num ^= this.EntityId.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x06003558 RID: 13656 RVA: 0x00092673 File Offset: 0x00090873
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x06003559 RID: 13657 RVA: 0x0009267B File Offset: 0x0009087B
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x0600355A RID: 13658 RVA: 0x00092684 File Offset: 0x00090884
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.NOFPFOIPOFD)
			{
				output.WriteRawTag(32);
				output.WriteBool(this.NOFPFOIPOFD);
			}
			if (this.MapLayer != 0U)
			{
				output.WriteRawTag(56);
				output.WriteUInt32(this.MapLayer);
			}
			if (this.motion_ != null)
			{
				output.WriteRawTag(66);
				output.WriteMessage(this.Motion);
			}
			if (this.EntityId != 0U)
			{
				output.WriteRawTag(72);
				output.WriteUInt32(this.EntityId);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600355B RID: 13659 RVA: 0x00092718 File Offset: 0x00090918
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.MapLayer != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.MapLayer);
			}
			if (this.NOFPFOIPOFD)
			{
				num += 2;
			}
			if (this.motion_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.Motion);
			}
			if (this.EntityId != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.EntityId);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600355C RID: 13660 RVA: 0x00092794 File Offset: 0x00090994
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(EntityMotion other)
		{
			if (other == null)
			{
				return;
			}
			if (other.MapLayer != 0U)
			{
				this.MapLayer = other.MapLayer;
			}
			if (other.NOFPFOIPOFD)
			{
				this.NOFPFOIPOFD = other.NOFPFOIPOFD;
			}
			if (other.motion_ != null)
			{
				if (this.motion_ == null)
				{
					this.Motion = new MotionInfo();
				}
				this.Motion.MergeFrom(other.Motion);
			}
			if (other.EntityId != 0U)
			{
				this.EntityId = other.EntityId;
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600355D RID: 13661 RVA: 0x00092824 File Offset: 0x00090A24
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600355E RID: 13662 RVA: 0x00092830 File Offset: 0x00090A30
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num <= 56U)
				{
					if (num == 32U)
					{
						this.NOFPFOIPOFD = input.ReadBool();
						continue;
					}
					if (num == 56U)
					{
						this.MapLayer = input.ReadUInt32();
						continue;
					}
				}
				else
				{
					if (num == 66U)
					{
						if (this.motion_ == null)
						{
							this.Motion = new MotionInfo();
						}
						input.ReadMessage(this.Motion);
						continue;
					}
					if (num == 72U)
					{
						this.EntityId = input.ReadUInt32();
						continue;
					}
				}
				this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
			}
		}

		// Token: 0x040014DC RID: 5340
		private static readonly MessageParser<EntityMotion> _parser = new MessageParser<EntityMotion>(() => new EntityMotion());

		// Token: 0x040014DD RID: 5341
		private UnknownFieldSet _unknownFields;

		// Token: 0x040014DE RID: 5342
		public const int MapLayerFieldNumber = 7;

		// Token: 0x040014DF RID: 5343
		private uint mapLayer_;

		// Token: 0x040014E0 RID: 5344
		public const int NOFPFOIPOFDFieldNumber = 4;

		// Token: 0x040014E1 RID: 5345
		private bool nOFPFOIPOFD_;

		// Token: 0x040014E2 RID: 5346
		public const int MotionFieldNumber = 8;

		// Token: 0x040014E3 RID: 5347
		private MotionInfo motion_;

		// Token: 0x040014E4 RID: 5348
		public const int EntityIdFieldNumber = 9;

		// Token: 0x040014E5 RID: 5349
		private uint entityId_;
	}
}
